Инструкция по работе с ошибками элаборации

Итак, вы описали модуль на языке SystemVerilog и хотите открыть логическую схему или запустить симуляцию, чтобы убедиться, что описание верно.

Однако, в результате какого-то из этих действий появляется окно с сообщением о непонятной ошибке:

../.pic/Vivado%20Basics/Elaboration%20failed/simFail.png

Рисунок 1. Пример окна ошибки при попытке запустить моделирование.

Ничего страшного — ошибки, это часть учебного и рабочего процесса.

Смело нажимаем OK, не читая сообщения (и поступаем так же, с еще одним открывшимся окном).

Мы собираемся получить информацию об ошибки из более подробного источника: вкладки Tcl Console.

../.pic/Vivado%20Basics/Elaboration%20failed/err_log.png

Рисунок 2. Элементы Tcl Console, содержащей лог сообщений нашего взаимодействия с Vivado`.

На рис. 2 представлено:

  1. Место последнего запуска (конец синего текста) — лог хранит информацию по всем попыткам запуска моделирования / открытия схемы. Каждая такая попытка будет начинаться с текста синего цвета, а значит по нему можно отслеживать начало нашего лога.
  2. Если попыток запуска было много, навигация по логу может быть осложнена. Для упрощения навигации, можно сворачивать неинтересующие нас попытки через кнопку, обозначенную на рис. 2 меткой 2.
  3. Кроме того, вместо сворачивания ненужных логов, можно очистить от сообщений всю Tcl Console, чтобы начать работу "с чистого листа". Это можно сделать нажав на кнопку с иконкой корзины, обозначенной меткой 3.
  4. Чтение ошибок в логе должно начинаться с самой первой, т.к. одна ошибка может причиной последующих.
  5. Найдя первую ошибку, необходимо внимательно ознакомиться с сообщением этой ошибки (обозначено меткой 5).
  6. Сообщение об ошибке обычно сопровождается номером строки в конкретном файле, вызвавшей эту ошибку.

Чаще всего этого сообщения будет достаточно, чтобы понять в чем дело.

В случае, если вы все ещё не понимаете в чем проблема, сверьтесь со списком типовых ошибок.

Если не помог и он, обратитесь к преподавателю.